package sv.edu.ues.igf115.clave1.dominio;
// Generated 08-nov-2013 23:15:45 by Hibernate Tools 3.2.1.GA


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * TarjetaCredito generated by hbm2java
 */
@Entity
@Table(name="tarjeta_credito"
    ,catalog="clave1"
)
public class TarjetaCredito  implements java.io.Serializable {


     private String idTarjeta;
     private Date fechaIngreso;
     private long limiteCredMax;
     private long limiteCredMin;
     private String nombreEmisor;
     private String nombreTarjeta;
     private long tasaInteres;
     private Set<ClienteTarjetaEstado> clienteTarjetaEstados = new HashSet<ClienteTarjetaEstado>(0);

    public TarjetaCredito() {
    }

	
    public TarjetaCredito(String idTarjeta, Date fechaIngreso, long limiteCredMax, long limiteCredMin, String nombreEmisor, String nombreTarjeta, long tasaInteres) {
        this.idTarjeta = idTarjeta;
        this.fechaIngreso = fechaIngreso;
        this.limiteCredMax = limiteCredMax;
        this.limiteCredMin = limiteCredMin;
        this.nombreEmisor = nombreEmisor;
        this.nombreTarjeta = nombreTarjeta;
        this.tasaInteres = tasaInteres;
    }
    public TarjetaCredito(String idTarjeta, Date fechaIngreso, long limiteCredMax, long limiteCredMin, String nombreEmisor, String nombreTarjeta, long tasaInteres, Set<ClienteTarjetaEstado> clienteTarjetaEstados) {
       this.idTarjeta = idTarjeta;
       this.fechaIngreso = fechaIngreso;
       this.limiteCredMax = limiteCredMax;
       this.limiteCredMin = limiteCredMin;
       this.nombreEmisor = nombreEmisor;
       this.nombreTarjeta = nombreTarjeta;
       this.tasaInteres = tasaInteres;
       this.clienteTarjetaEstados = clienteTarjetaEstados;
    }
   
     @Id 
    
    @Column(name="id_tarjeta", unique=true, nullable=false, length=5)
    public String getIdTarjeta() {
        return this.idTarjeta;
    }
    
    public void setIdTarjeta(String idTarjeta) {
        this.idTarjeta = idTarjeta;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="fecha_ingreso", nullable=false, length=10)
    public Date getFechaIngreso() {
        return this.fechaIngreso;
    }
    
    public void setFechaIngreso(Date fechaIngreso) {
        this.fechaIngreso = fechaIngreso;
    }
    
    @Column(name="limite_cred_max", nullable=false)
    public long getLimiteCredMax() {
        return this.limiteCredMax;
    }
    
    public void setLimiteCredMax(long limiteCredMax) {
        this.limiteCredMax = limiteCredMax;
    }
    
    @Column(name="limite_cred_min", nullable=false)
    public long getLimiteCredMin() {
        return this.limiteCredMin;
    }
    
    public void setLimiteCredMin(long limiteCredMin) {
        this.limiteCredMin = limiteCredMin;
    }
    
    @Column(name="nombre_emisor", nullable=false, length=45)
    public String getNombreEmisor() {
        return this.nombreEmisor;
    }
    
    public void setNombreEmisor(String nombreEmisor) {
        this.nombreEmisor = nombreEmisor;
    }
    
    @Column(name="nombre_tarjeta", nullable=false, length=45)
    public String getNombreTarjeta() {
        return this.nombreTarjeta;
    }
    
    public void setNombreTarjeta(String nombreTarjeta) {
        this.nombreTarjeta = nombreTarjeta;
    }
    
    @Column(name="tasa_interes", nullable=false)
    public long getTasaInteres() {
        return this.tasaInteres;
    }
    
    public void setTasaInteres(long tasaInteres) {
        this.tasaInteres = tasaInteres;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="tarjetaCredito")
    public Set<ClienteTarjetaEstado> getClienteTarjetaEstados() {
        return this.clienteTarjetaEstados;
    }
    
    public void setClienteTarjetaEstados(Set<ClienteTarjetaEstado> clienteTarjetaEstados) {
        this.clienteTarjetaEstados = clienteTarjetaEstados;
    }




}


